// 引入请求
import request from "../../utils/request"


let statY=0
let endY=0
let destance=0

// pages/personal/personal.js
Page({
  // 手指戳一下
  handlerStart(e){
    // 再次滑动清空之前的数据
    this.setData({
      convertTransition:'',
    })
    // 记录手指戳一下的坐标
    statY=e.touches[0].clientY
  },
  // 手指移动
  handlerMove(e){
    // 记录手指滑动的坐标
    endY=e.touches[0].clientY
    // 记录滑动距离
    destance=endY-statY
    // 最小值
    if(destance<0){
      destance=0
    }
    // 最大值
    if(destance>=80){
      destance=80
    }
    // 动起来
    this.setData({
      convertTransform:`translateY(${destance}rpx)`,
      convertTransition:'transform 1s linear'
    })
  },
  // 手指抬起
  handlerEnd(e){
    this.setData({
      convertTransform:'translateY(0rpx)',
      convertTransition:'transform 1s linear'
    })
  },


  /**
   * 页面的初始数据
   */
  data: {
  convertTransform:'transform(0rpx)',
  convertTransition:'',
  userProfile:{},//用户信息
  recentListData:[],//用户最近播放记录
  },

  toLogin(){
    // 点击头像,跳转登录页面
    if(!this.data.userProfile.nickname){
        wx.redirectTo({
          // 坑 当用户已经登录,不允许跳转登录页面
            url:"/pages/login/login"
        })
    }
  },

  // 获取最近播放数据:封装函数
  async getRecentListData(uid){
    // 调用接口获取数据
    let result=await request("/user/record",{uid,type:0})
    let index = 0
    // 更新数据
    console.log(result);
    this.setData({
      // 从数据库获取的数据很多,我们只要其中十条数据就可以
      // 使用数组的方法进行截取,由于获取的数据没有id,我们这里可以手动的添加id
      recentListData:result.allData.slice(0,10).map(item=>{
        item.id=index++
        return item
      })
    })
  },





  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    // 先从缓存中读取用户信息
    const userProfile=wx.getStorageSync("userInfo")
    // 判断是否获取到了用户信息
    if(userProfile){
      // 更新数据
      this.setData({
        userProfile: JSON.parse(userProfile)
      })
      // 当获取到用户信息后,获取用户最近播放记录
      this.getRecentListData(this.data.userProfile.userId)
    }
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})